home *** CD-ROM | disk | FTP | other *** search
- ; -*- Mode: Lisp; Syntax: Common-Lisp; Package: SCHEME-TRANSLATOR; -*-
-
- ; This file was generated by Pseudoscheme 2.8a
- ; running in Lucid Common Lisp 4.0.1
- ; from file /amd/night/b/jar/pseudo/node.scm
-
- (SCHI:BEGIN-TRANSLATED-FILE)
- (DEFUN NODE?
- (OBJ)
- (IF (SCHI:TRUEP (VECTOR? OBJ))
- (IF (>= (LENGTH (THE SIMPLE-VECTOR OBJ))
- 1)
- (SCHI:TRUE?
- (MEMBER (SVREF OBJ 0)
- '(SCHEME::CONSTANT SCHEME::LOCAL-VARIABLE
- SCHEME::PROGRAM-VARIABLE SCHEME::LAMBDA
- SCHEME::LETREC SCHEME::IF SCHEME::BEGIN SCHEME::SET!
- SCHEME::CALL)
- :TEST
- #'EQ))
- SCHI:FALSE)
- SCHI:FALSE))
- (SCHI:SET-VALUE-FROM-FUNCTION 'NODE? 'SCHEME::NODE?)
- (DEFUN NODE-TYPE (NODE) (SVREF NODE 0))
- (SCHI:SET-VALUE-FROM-FUNCTION 'NODE-TYPE
- 'SCHEME::NODE-TYPE)
- (DEFUN NODE-PREDICATE
- (.TYPE)
- #'(LAMBDA (NODE) (SCHI:TRUE? (EQ (NODE-TYPE NODE) .TYPE))))
- (SCHI:SET-VALUE-FROM-FUNCTION 'NODE-PREDICATE
- 'SCHEME::NODE-PREDICATE)
- (DEFUN NODE-ACCESSOR
- (.TYPE INDEX)
- #'(LAMBDA (NODE)
- (IF (NOT (EQ (NODE-TYPE NODE) .TYPE))
- (.ERROR "wrong node type" NODE .TYPE))
- (SVREF NODE INDEX)))
- (SCHI:SET-VALUE-FROM-FUNCTION 'NODE-ACCESSOR
- 'SCHEME::NODE-ACCESSOR)
- (DEFUN NODE-MODIFIER
- (.TYPE INDEX)
- #'(LAMBDA (NODE NEW-VAL)
- (IF (NOT (EQ (NODE-TYPE NODE) .TYPE))
- (.ERROR "wrong node type" NODE .TYPE))
- (SETF (SVREF NODE INDEX) NEW-VAL) SCHI:UNSPECIFIED))
- (SCHI:SET-VALUE-FROM-FUNCTION 'NODE-MODIFIER
- 'SCHEME::NODE-MODIFIER)
- (DEFUN MAKE-CONSTANT
- (VAL QUOTED?)
- (VECTOR 'SCHEME::CONSTANT VAL QUOTED?))
- (SCHI:SET-VALUE-FROM-FUNCTION 'MAKE-CONSTANT
- 'SCHEME::MAKE-CONSTANT)
- (LOCALLY (DECLARE (SPECIAL CONSTANT?))
- (SETQ CONSTANT? (NODE-PREDICATE 'SCHEME::CONSTANT)))
- (SCHI:SET-FUNCTION-FROM-VALUE 'CONSTANT?
- 'SCHEME::CONSTANT?)
- (LOCALLY (DECLARE (SPECIAL CONSTANT-VALUE))
- (SETQ CONSTANT-VALUE (NODE-ACCESSOR 'SCHEME::CONSTANT
- 1)))
- (SCHI:SET-FUNCTION-FROM-VALUE 'CONSTANT-VALUE
- 'SCHEME::CONSTANT-VALUE)
- (LOCALLY (DECLARE (SPECIAL CONSTANT-QUOTED?))
- (SETQ CONSTANT-QUOTED? (NODE-ACCESSOR 'SCHEME::CONSTANT
- 2)))
- (SCHI:SET-FUNCTION-FROM-VALUE 'CONSTANT-QUOTED?
- 'SCHEME::CONSTANT-QUOTED?)
- (DEFUN MAKE-LAMBDA
- (VARS BODY-NODE)
- (VECTOR 'SCHEME::LAMBDA VARS BODY-NODE))
- (SCHI:SET-VALUE-FROM-FUNCTION 'MAKE-LAMBDA
- 'SCHEME::MAKE-LAMBDA)
- (LOCALLY (DECLARE (SPECIAL LAMBDA?))
- (SETQ LAMBDA? (NODE-PREDICATE 'SCHEME::LAMBDA)))
- (SCHI:SET-FUNCTION-FROM-VALUE 'LAMBDA? 'SCHEME::LAMBDA?)
- (LOCALLY (DECLARE (SPECIAL LAMBDA-VARS))
- (SETQ LAMBDA-VARS (NODE-ACCESSOR 'SCHEME::LAMBDA 1)))
- (SCHI:SET-FUNCTION-FROM-VALUE 'LAMBDA-VARS
- 'SCHEME::LAMBDA-VARS)
- (LOCALLY (DECLARE (SPECIAL LAMBDA-BODY))
- (SETQ LAMBDA-BODY (NODE-ACCESSOR 'SCHEME::LAMBDA 2)))
- (SCHI:SET-FUNCTION-FROM-VALUE 'LAMBDA-BODY
- 'SCHEME::LAMBDA-BODY)
- (DEFUN N-ARY?
- (PROC)
- (SCHI:TRUE? (NOT (SCHI:TRUEP (PROPER-LIST? (LAMBDA-VARS PROC))))))
- (SCHI:SET-VALUE-FROM-FUNCTION 'N-ARY? 'SCHEME::N-ARY?)
- (DEFUN PROPER-LIST?
- (THING)
- (OR (NULL THING)
- (IF (CONSP THING)
- (SCHI:TRUE? (NULL (CDR (LAST-PAIR THING))))
- SCHI:FALSE)))
- (SCHI:SET-VALUE-FROM-FUNCTION 'PROPER-LIST?
- 'SCHEME::PROPER-LIST?)
- (DEFUN PROPER-LISTIFY
- (THING)
- (IF (NULL THING)
- 'NIL
- (IF (CONSP THING)
- (CONS (CAR THING)
- (PROPER-LISTIFY (CDR THING)))
- (LIST THING))))
- (SCHI:SET-VALUE-FROM-FUNCTION 'PROPER-LISTIFY
- 'SCHEME::PROPER-LISTIFY)
- (DEFUN MAP-BVL
- (PROC BVL)
- (IF (NULL BVL)
- 'NIL
- (IF (CONSP BVL)
- (CONS (FUNCALL PROC (CAR BVL))
- (MAP-BVL PROC (CDR BVL)))
- (FUNCALL PROC BVL))))
- (SCHI:SET-VALUE-FROM-FUNCTION 'MAP-BVL 'SCHEME::MAP-BVL)
- (DEFUN MAKE-LETREC
- (VARS VAL-NODES BODY-NODE)
- (VECTOR 'SCHEME::LETREC
- VARS
- VAL-NODES
- BODY-NODE
- SCHI:FALSE))
- (SCHI:SET-VALUE-FROM-FUNCTION 'MAKE-LETREC
- 'SCHEME::MAKE-LETREC)
- (LOCALLY (DECLARE (SPECIAL LETREC?))
- (SETQ LETREC? (NODE-PREDICATE 'SCHEME::LETREC)))
- (SCHI:SET-FUNCTION-FROM-VALUE 'LETREC? 'SCHEME::LETREC?)
- (LOCALLY (DECLARE (SPECIAL LETREC-VARS))
- (SETQ LETREC-VARS (NODE-ACCESSOR 'SCHEME::LETREC 1)))
- (SCHI:SET-FUNCTION-FROM-VALUE 'LETREC-VARS
- 'SCHEME::LETREC-VARS)
- (LOCALLY (DECLARE (SPECIAL LETREC-VALS))
- (SETQ LETREC-VALS (NODE-ACCESSOR 'SCHEME::LETREC 2)))
- (SCHI:SET-FUNCTION-FROM-VALUE 'LETREC-VALS
- 'SCHEME::LETREC-VALS)
- (LOCALLY (DECLARE (SPECIAL LETREC-BODY))
- (SETQ LETREC-BODY (NODE-ACCESSOR 'SCHEME::LETREC 3)))
- (SCHI:SET-FUNCTION-FROM-VALUE 'LETREC-BODY
- 'SCHEME::LETREC-BODY)
- (LOCALLY (DECLARE (SPECIAL LETREC-STRATEGY))
- (SETQ LETREC-STRATEGY (NODE-ACCESSOR 'SCHEME::LETREC 4)))
- (SCHI:SET-FUNCTION-FROM-VALUE 'LETREC-STRATEGY
- 'SCHEME::LETREC-STRATEGY)
- (LOCALLY (DECLARE (SPECIAL SET-LETREC-STRATEGY!))
- (SETQ SET-LETREC-STRATEGY! (NODE-MODIFIER 'SCHEME::LETREC
- 4)))
- (SCHI:SET-FUNCTION-FROM-VALUE 'SET-LETREC-STRATEGY!
- 'SCHEME::SET-LETREC-STRATEGY!)
- (DEFUN MAKE-IF
- (TEST CON ALT)
- (VECTOR 'SCHEME::IF TEST CON ALT))
- (SCHI:SET-VALUE-FROM-FUNCTION 'MAKE-IF 'SCHEME::MAKE-IF)
- (LOCALLY (DECLARE (SPECIAL IF?))
- (SETQ IF? (NODE-PREDICATE 'SCHEME::IF)))
- (SCHI:SET-FUNCTION-FROM-VALUE 'IF? 'SCHEME::IF?)
- (LOCALLY (DECLARE (SPECIAL IF-TEST))
- (SETQ IF-TEST (NODE-ACCESSOR 'SCHEME::IF 1)))
- (SCHI:SET-FUNCTION-FROM-VALUE 'IF-TEST 'SCHEME::IF-TEST)
- (LOCALLY (DECLARE (SPECIAL IF-CON))
- (SETQ IF-CON (NODE-ACCESSOR 'SCHEME::IF 2)))
- (SCHI:SET-FUNCTION-FROM-VALUE 'IF-CON 'SCHEME::IF-CON)
- (LOCALLY (DECLARE (SPECIAL IF-ALT))
- (SETQ IF-ALT (NODE-ACCESSOR 'SCHEME::IF 3)))
- (SCHI:SET-FUNCTION-FROM-VALUE 'IF-ALT 'SCHEME::IF-ALT)
- (DEFUN MAKE-BEGIN
- (.FIRST .SECOND)
- (VECTOR 'SCHEME::BEGIN .FIRST .SECOND))
- (SCHI:SET-VALUE-FROM-FUNCTION 'MAKE-BEGIN
- 'SCHEME::MAKE-BEGIN)
- (LOCALLY (DECLARE (SPECIAL BEGIN?))
- (SETQ BEGIN? (NODE-PREDICATE 'SCHEME::BEGIN)))
- (SCHI:SET-FUNCTION-FROM-VALUE 'BEGIN? 'SCHEME::BEGIN?)
- (LOCALLY (DECLARE (SPECIAL BEGIN-FIRST))
- (SETQ BEGIN-FIRST (NODE-ACCESSOR 'SCHEME::BEGIN 1)))
- (SCHI:SET-FUNCTION-FROM-VALUE 'BEGIN-FIRST
- 'SCHEME::BEGIN-FIRST)
- (LOCALLY (DECLARE (SPECIAL BEGIN-SECOND))
- (SETQ BEGIN-SECOND (NODE-ACCESSOR 'SCHEME::BEGIN 2)))
- (SCHI:SET-FUNCTION-FROM-VALUE 'BEGIN-SECOND
- 'SCHEME::BEGIN-SECOND)
- (DEFUN MAKE-SET!
- (LHS RHS)
- (VECTOR 'SCHEME::SET! LHS RHS))
- (SCHI:SET-VALUE-FROM-FUNCTION 'MAKE-SET!
- 'SCHEME::MAKE-SET!)
- (LOCALLY (DECLARE (SPECIAL SET!?))
- (SETQ SET!? (NODE-PREDICATE 'SCHEME::SET!)))
- (SCHI:SET-FUNCTION-FROM-VALUE 'SET!? 'SCHEME::SET!?)
- (LOCALLY (DECLARE (SPECIAL SET!-LHS))
- (SETQ SET!-LHS (NODE-ACCESSOR 'SCHEME::SET! 1)))
- (SCHI:SET-FUNCTION-FROM-VALUE 'SET!-LHS
- 'SCHEME::SET!-LHS)
- (LOCALLY (DECLARE (SPECIAL SET!-RHS))
- (SETQ SET!-RHS (NODE-ACCESSOR 'SCHEME::SET! 2)))
- (SCHI:SET-FUNCTION-FROM-VALUE 'SET!-RHS
- 'SCHEME::SET!-RHS)
- (DEFUN MAKE-CALL
- (PROC-NODE ARG-NODES)
- (VECTOR 'SCHEME::CALL PROC-NODE ARG-NODES))
- (SCHI:SET-VALUE-FROM-FUNCTION 'MAKE-CALL
- 'SCHEME::MAKE-CALL)
- (LOCALLY (DECLARE (SPECIAL CALL?))
- (SETQ CALL? (NODE-PREDICATE 'SCHEME::CALL)))
- (SCHI:SET-FUNCTION-FROM-VALUE 'CALL? 'SCHEME::CALL?)
- (LOCALLY (DECLARE (SPECIAL CALL-PROC))
- (SETQ CALL-PROC (NODE-ACCESSOR 'SCHEME::CALL 1)))
- (SCHI:SET-FUNCTION-FROM-VALUE 'CALL-PROC
- 'SCHEME::CALL-PROC)
- (LOCALLY (DECLARE (SPECIAL CALL-ARGS))
- (SETQ CALL-ARGS (NODE-ACCESSOR 'SCHEME::CALL 2)))
- (SCHI:SET-FUNCTION-FROM-VALUE 'CALL-ARGS
- 'SCHEME::CALL-ARGS)
- (DEFUN MAKE-DEFINE
- (LHS RHS)
- (VECTOR 'SCHEME::DEFINE LHS RHS))
- (SCHI:SET-VALUE-FROM-FUNCTION 'MAKE-DEFINE
- 'SCHEME::MAKE-DEFINE)
- (LOCALLY (DECLARE (SPECIAL DEFINE?))
- (SETQ DEFINE? (NODE-PREDICATE 'SCHEME::DEFINE)))
- (SCHI:SET-FUNCTION-FROM-VALUE 'DEFINE? 'SCHEME::DEFINE?)
- (LOCALLY (DECLARE (SPECIAL DEFINE-LHS))
- (SETQ DEFINE-LHS (NODE-ACCESSOR 'SCHEME::DEFINE 1)))
- (SCHI:SET-FUNCTION-FROM-VALUE 'DEFINE-LHS
- 'SCHEME::DEFINE-LHS)
- (LOCALLY (DECLARE (SPECIAL DEFINE-RHS))
- (SETQ DEFINE-RHS (NODE-ACCESSOR 'SCHEME::DEFINE 2)))
- (SCHI:SET-FUNCTION-FROM-VALUE 'DEFINE-RHS
- 'SCHEME::DEFINE-RHS)
- (DEFUN MAKE-LOCAL-VARIABLE
- (UNAME)
- (VECTOR 'SCHEME::LOCAL-VARIABLE
- UNAME
- SCHI:FALSE
- SCHI:FALSE
- SCHI:FALSE
- SCHI:FALSE
- SCHI:FALSE
- SCHI:FALSE
- SCHI:FALSE))
- (SCHI:SET-VALUE-FROM-FUNCTION 'MAKE-LOCAL-VARIABLE
- 'SCHEME::MAKE-LOCAL-VARIABLE)
- (LOCALLY (DECLARE (SPECIAL LOCAL-VARIABLE?))
- (SETQ LOCAL-VARIABLE? (NODE-PREDICATE 'SCHEME::LOCAL-VARIABLE)))
- (SCHI:SET-FUNCTION-FROM-VALUE 'LOCAL-VARIABLE?
- 'SCHEME::LOCAL-VARIABLE?)
- (LOCALLY (DECLARE (SPECIAL LOCAL-VARIABLE-NAME))
- (SETQ LOCAL-VARIABLE-NAME (NODE-ACCESSOR 'SCHEME::LOCAL-VARIABLE
- 1)))
- (SCHI:SET-FUNCTION-FROM-VALUE 'LOCAL-VARIABLE-NAME
- 'SCHEME::LOCAL-VARIABLE-NAME)
- (LOCALLY (DECLARE (SPECIAL VARIABLE-SUBSTITUTION))
- (SETQ VARIABLE-SUBSTITUTION (NODE-ACCESSOR 'SCHEME::LOCAL-VARIABLE
- 3)))
- (SCHI:SET-FUNCTION-FROM-VALUE 'VARIABLE-SUBSTITUTION
- 'SCHEME::VARIABLE-SUBSTITUTION)
- (LOCALLY (DECLARE (SPECIAL SET-SUBSTITUTION!))
- (SETQ SET-SUBSTITUTION! (NODE-MODIFIER 'SCHEME::LOCAL-VARIABLE
- 3)))
- (SCHI:SET-FUNCTION-FROM-VALUE 'SET-SUBSTITUTION!
- 'SCHEME::SET-SUBSTITUTION!)
- (LOCALLY (DECLARE (SPECIAL VARIABLE-VALUE-REFS?))
- (SETQ VARIABLE-VALUE-REFS? (NODE-ACCESSOR 'SCHEME::LOCAL-VARIABLE
- 5)))
- (SCHI:SET-FUNCTION-FROM-VALUE 'VARIABLE-VALUE-REFS?
- 'SCHEME::VARIABLE-VALUE-REFS?)
- (LOCALLY (DECLARE (SPECIAL VARIABLE-PROC-REFS?))
- (SETQ VARIABLE-PROC-REFS? (NODE-ACCESSOR 'SCHEME::LOCAL-VARIABLE
- 6)))
- (SCHI:SET-FUNCTION-FROM-VALUE 'VARIABLE-PROC-REFS?
- 'SCHEME::VARIABLE-PROC-REFS?)
- (LOCALLY (DECLARE (SPECIAL VARIABLE-ASSIGNED?))
- (SETQ VARIABLE-ASSIGNED? (NODE-ACCESSOR 'SCHEME::LOCAL-VARIABLE
- 7)))
- (SCHI:SET-FUNCTION-FROM-VALUE 'VARIABLE-ASSIGNED?
- 'SCHEME::VARIABLE-ASSIGNED?)
- (LOCALLY (DECLARE (SPECIAL VARIABLE-CLOSED-OVER?))
- (SETQ VARIABLE-CLOSED-OVER? (NODE-ACCESSOR 'SCHEME::LOCAL-VARIABLE
- 8)))
- (SCHI:SET-FUNCTION-FROM-VALUE 'VARIABLE-CLOSED-OVER?
- 'SCHEME::VARIABLE-CLOSED-OVER?)
- (DEFUN SET-VALUE-REFS!
- (VAR)
- (FUNCALL (NODE-MODIFIER 'SCHEME::LOCAL-VARIABLE 5)
- VAR
- SCHI:TRUE))
- (SCHI:SET-VALUE-FROM-FUNCTION 'SET-VALUE-REFS!
- 'SCHEME::SET-VALUE-REFS!)
- (DEFUN SET-PROC-REFS!
- (VAR)
- (FUNCALL (NODE-MODIFIER 'SCHEME::LOCAL-VARIABLE 6)
- VAR
- SCHI:TRUE))
- (SCHI:SET-VALUE-FROM-FUNCTION 'SET-PROC-REFS!
- 'SCHEME::SET-PROC-REFS!)
- (DEFUN SET-ASSIGNED!
- (VAR)
- (FUNCALL (NODE-MODIFIER 'SCHEME::LOCAL-VARIABLE 7)
- VAR
- SCHI:TRUE))
- (SCHI:SET-VALUE-FROM-FUNCTION 'SET-ASSIGNED!
- 'SCHEME::SET-ASSIGNED!)
- (DEFUN SET-CLOSED-OVER!
- (VAR)
- (FUNCALL (NODE-MODIFIER 'SCHEME::LOCAL-VARIABLE 8)
- VAR
- SCHI:TRUE))
- (SCHI:SET-VALUE-FROM-FUNCTION 'SET-CLOSED-OVER!
- 'SCHEME::SET-CLOSED-OVER!)
- (DEFUN MAKE-PROGRAM-VARIABLE
- (NAME CL-SYMBOL)
- (VECTOR 'SCHEME::PROGRAM-VARIABLE
- NAME
- CL-SYMBOL))
- (SCHI:SET-VALUE-FROM-FUNCTION 'MAKE-PROGRAM-VARIABLE
- 'SCHEME::MAKE-PROGRAM-VARIABLE)
- (LOCALLY (DECLARE (SPECIAL PROGRAM-VARIABLE?))
- (SETQ PROGRAM-VARIABLE? (NODE-PREDICATE 'SCHEME::PROGRAM-VARIABLE)))
- (SCHI:SET-FUNCTION-FROM-VALUE 'PROGRAM-VARIABLE?
- 'SCHEME::PROGRAM-VARIABLE?)
- (LOCALLY (DECLARE (SPECIAL PROGRAM-VARIABLE-NAME))
- (SETQ PROGRAM-VARIABLE-NAME (NODE-ACCESSOR 'SCHEME::PROGRAM-VARIABLE
- 1)))
- (SCHI:SET-FUNCTION-FROM-VALUE 'PROGRAM-VARIABLE-NAME
- 'SCHEME::PROGRAM-VARIABLE-NAME)
- (LOCALLY (DECLARE (SPECIAL PROGRAM-VARIABLE-CL-SYMBOL))
- (SETQ PROGRAM-VARIABLE-CL-SYMBOL (NODE-ACCESSOR
- 'SCHEME::PROGRAM-VARIABLE
- 2)))
- (SCHI:SET-FUNCTION-FROM-VALUE 'PROGRAM-VARIABLE-CL-SYMBOL
- 'SCHEME::PROGRAM-VARIABLE-CL-SYMBOL)
- (DEFUN VARIABLE?
- (NODE)
- (LET ((TEMP (LOCAL-VARIABLE? NODE)))
- (IF (SCHI:TRUEP TEMP)
- TEMP
- (PROGRAM-VARIABLE? NODE))))
- (SCHI:SET-VALUE-FROM-FUNCTION 'VARIABLE?
- 'SCHEME::VARIABLE?)
-